#ifndef _DD_BOX_H_
#define _DD_BOX_H_

#include "dd_base.h"
#include "math/vec3.h"

namespace dd 
{
///////////////////////////////////////////////////////
///	\brief	Box debug shape
///////////////////////////////////////////////////////
class Box : public PrimitiveBase
{
public:
    /**
     * Initialize class
     */
					Box();
    /**
     * Destroy class
     */
	virtual			~Box();

    /**
     * Render to buffer
     * @param   _pBuffer    Buffer to render into
     */
	virtual void	Render(DBG_BUFFER* _pBuffer);

    /**
     * Setup primitive
     * @param   _Min    low XYZ corner
     * @param   _Max    high XYZ corner
     * @param   _Color      Color of primitive
     */
     void	Setup(const math::Vec3& _Min, const math::Vec3& _Max, COLOR _Color = ColorRGBA(255, 255, 255));

private:
    math::Vec3			m_Min;      /// low XYZ corner
	math::Vec3			m_Max;      /// high XYZ corner

};

}// End namespace dd


#endif //_DD_BOX_H_